<html><body>
<style>

body, h1, h2, h3, div, span, p, pre, a {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  font-size: 13px;
  padding: 1em;
}

h1 {
  font-size: 26px;
  margin-bottom: 1em;
}

h2 {
  font-size: 24px;
  margin-bottom: 1em;
}

h3 {
  font-size: 20px;
  margin-bottom: 1em;
  margin-top: 1em;
}

pre, code {
  line-height: 1.5;
  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}

pre {
  margin-top: 0.5em;
}

h1, h2, h3, p {
  font-family: Arial, sans serif;
}

h1, h2, h3 {
  border-bottom: solid #CCC 1px;
}

.toc_element {
  margin-top: 0.5em;
}

.firstline {
  margin-left: 2 em;
}

.method  {
  margin-top: 1em;
  border: solid 1px #CCC;
  padding: 1em;
  background: #EEE;
}

.details {
  font-weight: bold;
  font-size: 14px;
}

</style>

<h1><a href="apihub_v1.html">API hub API</a> . <a href="apihub_v1.projects.html">projects</a> . <a href="apihub_v1.projects.locations.html">locations</a> . <a href="apihub_v1.projects.locations.plugins.html">plugins</a> . <a href="apihub_v1.projects.locations.plugins.instances.html">instances</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="#close">close()</a></code></p>
<p class="firstline">Close httplib2 connections.</p>
<p class="toc_element">
  <code><a href="#create">create(parent, body=None, pluginInstanceId=None, x__xgafv=None)</a></code></p>
<p class="firstline">Creates a Plugin instance in the API hub.</p>
<p class="toc_element">
  <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
<p class="firstline">Deletes a plugin instance in the API hub.</p>
<p class="toc_element">
  <code><a href="#disableAction">disableAction(name, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Disables a plugin instance in the API hub.</p>
<p class="toc_element">
  <code><a href="#enableAction">enableAction(name, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Enables a plugin instance in the API hub.</p>
<p class="toc_element">
  <code><a href="#executeAction">executeAction(name, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Executes a plugin instance in the API hub.</p>
<p class="toc_element">
  <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
<p class="firstline">Get an API Hub plugin instance.</p>
<p class="toc_element">
  <code><a href="#list">list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p>
<p class="firstline">List all the plugins in a given project and location. `-` can be used as wildcard value for {plugin_id}</p>
<p class="toc_element">
  <code><a href="#list_next">list_next()</a></code></p>
<p class="firstline">Retrieves the next page of results.</p>
<p class="toc_element">
  <code><a href="#manageSourceData">manageSourceData(name, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Manages data for a given plugin instance.</p>
<p class="toc_element">
  <code><a href="#patch">patch(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
<p class="firstline">Updates a plugin instance in the API hub. The following fields in the plugin_instance can be updated currently: * display_name * schedule_cron_expression The update_mask should be used to specify the fields being updated. To update the auth_config and additional_config of the plugin instance, use the ApplyPluginInstanceConfig method.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="close">close()</code>
  <pre>Close httplib2 connections.</pre>
</div>

<div class="method">
    <code class="details" id="create">create(parent, body=None, pluginInstanceId=None, x__xgafv=None)</code>
  <pre>Creates a Plugin instance in the API hub.

Args:
  parent: string, Required. The parent of the plugin instance resource. Format: `projects/{project}/locations/{location}/plugins/{plugin}` (required)
  body: object, The request body.
    The object takes the form of:

{ # Represents a plugin instance resource in the API Hub. A PluginInstance is a specific instance of a hub plugin with its own configuration, state, and execution details.
  &quot;actions&quot;: [ # Required. The action status for the plugin instance.
    { # PluginInstanceAction represents an action which can be executed in the plugin instance.
      &quot;actionId&quot;: &quot;A String&quot;, # Required. This should map to one of the action id specified in actions_config in the plugin.
      &quot;curationConfig&quot;: { # The curation information for this plugin instance. # Optional. This configuration should be provided if the plugin action is publishing data to API hub curate layer.
        &quot;curationType&quot;: &quot;A String&quot;, # Required. The curation type for this plugin instance.
        &quot;customCuration&quot;: { # Custom curation information for this plugin instance. # Optional. Custom curation information for this plugin instance.
          &quot;curation&quot;: &quot;A String&quot;, # Required. The unique name of the curation resource. This will be the name of the curation resource in the format: `projects/{project}/locations/{location}/curations/{curation}`
        },
      },
      &quot;hubInstanceAction&quot;: { # The execution status for the plugin instance. # Optional. The execution information for the plugin instance action done corresponding to an API hub instance.
        &quot;currentExecutionState&quot;: &quot;A String&quot;, # Output only. The current state of the execution.
        &quot;lastExecution&quot;: { # The result of the last execution of the plugin instance. # Output only. The last execution of the plugin instance.
          &quot;endTime&quot;: &quot;A String&quot;, # Output only. The last execution end time of the plugin instance.
          &quot;errorMessage&quot;: &quot;A String&quot;, # Output only. Error message describing the failure, if any, during the last execution.
          &quot;result&quot;: &quot;A String&quot;, # Output only. The result of the last execution of the plugin instance.
          &quot;startTime&quot;: &quot;A String&quot;, # Output only. The last execution start time of the plugin instance.
        },
      },
      &quot;resourceConfig&quot;: { # The configuration of resources created for a given plugin instance action. # Output only. The configuration of resources created for a given plugin instance action. Note these will be returned only in case of Non-GCP plugins like OPDK.
        &quot;actionType&quot;: &quot;A String&quot;, # Output only. The type of the action.
        &quot;pubsubTopic&quot;: &quot;A String&quot;, # Output only. The pubsub topic to publish the data to. Format is projects/{project}/topics/{topic}
      },
      &quot;scheduleCronExpression&quot;: &quot;A String&quot;, # Optional. The schedule for this plugin instance action. This can only be set if the plugin supports API_HUB_SCHEDULE_TRIGGER mode for this action.
      &quot;scheduleTimeZone&quot;: &quot;A String&quot;, # Optional. The time zone for the schedule cron expression. If not provided, UTC will be used.
      &quot;serviceAccount&quot;: &quot;A String&quot;, # Optional. The service account used to publish data. Note, the service account will only be accepted for non GCP plugins like OPDK.
      &quot;state&quot;: &quot;A String&quot;, # Output only. The current state of the plugin action in the plugin instance.
    },
  ],
  &quot;additionalConfig&quot;: { # Optional. The additional information for this plugin instance corresponding to the additional config template of the plugin. This information will be sent to plugin hosting service on each call to plugin hosted service. The key will be the config_variable_template.display_name to uniquely identify the config variable.
    &quot;a_key&quot;: { # ConfigVariable represents a additional configuration variable present in a PluginInstance Config or AuthConfig, based on a ConfigVariableTemplate.
      &quot;boolValue&quot;: True or False, # Optional. The config variable value in case of config variable of type boolean.
      &quot;enumValue&quot;: { # ConfigValueOption represents an option for a config variable of type enum or multi select. # Optional. The config variable value in case of config variable of type enum.
        &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the option.
        &quot;displayName&quot;: &quot;A String&quot;, # Required. Display name of the option.
        &quot;id&quot;: &quot;A String&quot;, # Required. Id of the option.
      },
      &quot;intValue&quot;: &quot;A String&quot;, # Optional. The config variable value in case of config variable of type integer.
      &quot;key&quot;: &quot;A String&quot;, # Output only. Key will be the id to uniquely identify the config variable.
      &quot;multiIntValues&quot;: { # The config variable value of data type multi int. # Optional. The config variable value in case of config variable of type multi integer.
        &quot;values&quot;: [ # Optional. The config variable value of data type multi int.
          42,
        ],
      },
      &quot;multiSelectValues&quot;: { # The config variable value of data type multi select. # Optional. The config variable value in case of config variable of type multi select.
        &quot;values&quot;: [ # Optional. The config variable value of data type multi select.
          { # ConfigValueOption represents an option for a config variable of type enum or multi select.
            &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the option.
            &quot;displayName&quot;: &quot;A String&quot;, # Required. Display name of the option.
            &quot;id&quot;: &quot;A String&quot;, # Required. Id of the option.
          },
        ],
      },
      &quot;multiStringValues&quot;: { # The config variable value of data type multi string. # Optional. The config variable value in case of config variable of type multi string.
        &quot;values&quot;: [ # Optional. The config variable value of data type multi string.
          &quot;A String&quot;,
        ],
      },
      &quot;secretValue&quot;: { # Secret provides a reference to entries in Secret Manager. # Optional. The config variable value in case of config variable of type secret.
        &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
      },
      &quot;stringValue&quot;: &quot;A String&quot;, # Optional. The config variable value in case of config variable of type string.
    },
  },
  &quot;authConfig&quot;: { # AuthConfig represents the authentication information. # Optional. The authentication information for this plugin instance.
    &quot;apiKeyConfig&quot;: { # Config for authentication with API key. # Api Key Config.
      &quot;apiKey&quot;: { # Secret provides a reference to entries in Secret Manager. # Required. The name of the SecretManager secret version resource storing the API key. Format: `projects/{project}/secrets/{secrete}/versions/{version}`. The `secretmanager.versions.access` permission should be granted to the service account accessing the secret.
        &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
      },
      &quot;httpElementLocation&quot;: &quot;A String&quot;, # Required. The location of the API key. The default value is QUERY.
      &quot;name&quot;: &quot;A String&quot;, # Required. The parameter name of the API key. E.g. If the API request is &quot;https://example.com/act?api_key=&quot;, &quot;api_key&quot; would be the parameter name.
    },
    &quot;authType&quot;: &quot;A String&quot;, # Required. The authentication type.
    &quot;googleServiceAccountConfig&quot;: { # Config for Google service account authentication. # Google Service Account.
      &quot;serviceAccount&quot;: &quot;A String&quot;, # Required. The service account to be used for authenticating request. The `iam.serviceAccounts.getAccessToken` permission should be granted on this service account to the impersonator service account.
    },
    &quot;oauth2ClientCredentialsConfig&quot;: { # Parameters to support Oauth 2.0 client credentials grant authentication. See https://tools.ietf.org/html/rfc6749#section-1.3.4 for more details. # Oauth2.0 Client Credentials.
      &quot;clientId&quot;: &quot;A String&quot;, # Required. The client identifier.
      &quot;clientSecret&quot;: { # Secret provides a reference to entries in Secret Manager. # Required. Secret version reference containing the client secret. The `secretmanager.versions.access` permission should be granted to the service account accessing the secret.
        &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
      },
    },
    &quot;userPasswordConfig&quot;: { # Parameters to support Username and Password Authentication. # User Password.
      &quot;password&quot;: { # Secret provides a reference to entries in Secret Manager. # Required. Secret version reference containing the password. The `secretmanager.versions.access` permission should be granted to the service account accessing the secret.
        &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
      },
      &quot;username&quot;: &quot;A String&quot;, # Required. Username.
    },
  },
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Timestamp indicating when the plugin instance was created.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name for this plugin instance. Max length is 255 characters.
  &quot;errorMessage&quot;: &quot;A String&quot;, # Output only. Error message describing the failure, if any, during Create, Delete or ApplyConfig operation corresponding to the plugin instance.This field will only be populated if the plugin instance is in the ERROR or FAILED state.
  &quot;name&quot;: &quot;A String&quot;, # Identifier. The unique name of the plugin instance resource. Format: `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}`
  &quot;sourceProjectId&quot;: &quot;A String&quot;, # Optional. The source project id of the plugin instance. This will be the id of runtime project in case of gcp based plugins and org id in case of non gcp based plugins. This field will be a required field for Google provided on-ramp plugins.
  &quot;state&quot;: &quot;A String&quot;, # Output only. The current state of the plugin instance (e.g., enabled, disabled, provisioning).
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Timestamp indicating when the plugin instance was last updated.
}

  pluginInstanceId: string, Optional. The ID to use for the plugin instance, which will become the final component of the plugin instance&#x27;s resource name. This field is optional. * If provided, the same will be used. The service will throw an error if the specified id is already used by another plugin instance in the plugin resource. * If not provided, a system generated id will be used. This value should be 4-63 characters, and valid characters are /a-z[0-9]-_/.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="delete">delete(name, x__xgafv=None)</code>
  <pre>Deletes a plugin instance in the API hub.

Args:
  name: string, Required. The name of the plugin instance to delete. Format: `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}`. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="disableAction">disableAction(name, body=None, x__xgafv=None)</code>
  <pre>Disables a plugin instance in the API hub.

Args:
  name: string, Required. The name of the plugin instance to disable. Format: `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}` (required)
  body: object, The request body.
    The object takes the form of:

{ # The DisablePluginInstanceAction method&#x27;s request.
  &quot;actionId&quot;: &quot;A String&quot;, # Required. The action id to disable.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="enableAction">enableAction(name, body=None, x__xgafv=None)</code>
  <pre>Enables a plugin instance in the API hub.

Args:
  name: string, Required. The name of the plugin instance to enable. Format: `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}` (required)
  body: object, The request body.
    The object takes the form of:

{ # The EnablePluginInstanceAction method&#x27;s request.
  &quot;actionId&quot;: &quot;A String&quot;, # Required. The action id to enable.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="executeAction">executeAction(name, body=None, x__xgafv=None)</code>
  <pre>Executes a plugin instance in the API hub.

Args:
  name: string, Required. The name of the plugin instance to execute. Format: `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}` (required)
  body: object, The request body.
    The object takes the form of:

{ # The ExecutePluginInstanceAction method&#x27;s request.
  &quot;actionExecutionDetail&quot;: { # The details for the action to execute. # Required. The execution details for the action to execute.
    &quot;actionId&quot;: &quot;A String&quot;, # Required. The action id of the plugin to execute.
  },
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="get">get(name, x__xgafv=None)</code>
  <pre>Get an API Hub plugin instance.

Args:
  name: string, Required. The name of the plugin instance to retrieve. Format: `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}` (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Represents a plugin instance resource in the API Hub. A PluginInstance is a specific instance of a hub plugin with its own configuration, state, and execution details.
  &quot;actions&quot;: [ # Required. The action status for the plugin instance.
    { # PluginInstanceAction represents an action which can be executed in the plugin instance.
      &quot;actionId&quot;: &quot;A String&quot;, # Required. This should map to one of the action id specified in actions_config in the plugin.
      &quot;curationConfig&quot;: { # The curation information for this plugin instance. # Optional. This configuration should be provided if the plugin action is publishing data to API hub curate layer.
        &quot;curationType&quot;: &quot;A String&quot;, # Required. The curation type for this plugin instance.
        &quot;customCuration&quot;: { # Custom curation information for this plugin instance. # Optional. Custom curation information for this plugin instance.
          &quot;curation&quot;: &quot;A String&quot;, # Required. The unique name of the curation resource. This will be the name of the curation resource in the format: `projects/{project}/locations/{location}/curations/{curation}`
        },
      },
      &quot;hubInstanceAction&quot;: { # The execution status for the plugin instance. # Optional. The execution information for the plugin instance action done corresponding to an API hub instance.
        &quot;currentExecutionState&quot;: &quot;A String&quot;, # Output only. The current state of the execution.
        &quot;lastExecution&quot;: { # The result of the last execution of the plugin instance. # Output only. The last execution of the plugin instance.
          &quot;endTime&quot;: &quot;A String&quot;, # Output only. The last execution end time of the plugin instance.
          &quot;errorMessage&quot;: &quot;A String&quot;, # Output only. Error message describing the failure, if any, during the last execution.
          &quot;result&quot;: &quot;A String&quot;, # Output only. The result of the last execution of the plugin instance.
          &quot;startTime&quot;: &quot;A String&quot;, # Output only. The last execution start time of the plugin instance.
        },
      },
      &quot;resourceConfig&quot;: { # The configuration of resources created for a given plugin instance action. # Output only. The configuration of resources created for a given plugin instance action. Note these will be returned only in case of Non-GCP plugins like OPDK.
        &quot;actionType&quot;: &quot;A String&quot;, # Output only. The type of the action.
        &quot;pubsubTopic&quot;: &quot;A String&quot;, # Output only. The pubsub topic to publish the data to. Format is projects/{project}/topics/{topic}
      },
      &quot;scheduleCronExpression&quot;: &quot;A String&quot;, # Optional. The schedule for this plugin instance action. This can only be set if the plugin supports API_HUB_SCHEDULE_TRIGGER mode for this action.
      &quot;scheduleTimeZone&quot;: &quot;A String&quot;, # Optional. The time zone for the schedule cron expression. If not provided, UTC will be used.
      &quot;serviceAccount&quot;: &quot;A String&quot;, # Optional. The service account used to publish data. Note, the service account will only be accepted for non GCP plugins like OPDK.
      &quot;state&quot;: &quot;A String&quot;, # Output only. The current state of the plugin action in the plugin instance.
    },
  ],
  &quot;additionalConfig&quot;: { # Optional. The additional information for this plugin instance corresponding to the additional config template of the plugin. This information will be sent to plugin hosting service on each call to plugin hosted service. The key will be the config_variable_template.display_name to uniquely identify the config variable.
    &quot;a_key&quot;: { # ConfigVariable represents a additional configuration variable present in a PluginInstance Config or AuthConfig, based on a ConfigVariableTemplate.
      &quot;boolValue&quot;: True or False, # Optional. The config variable value in case of config variable of type boolean.
      &quot;enumValue&quot;: { # ConfigValueOption represents an option for a config variable of type enum or multi select. # Optional. The config variable value in case of config variable of type enum.
        &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the option.
        &quot;displayName&quot;: &quot;A String&quot;, # Required. Display name of the option.
        &quot;id&quot;: &quot;A String&quot;, # Required. Id of the option.
      },
      &quot;intValue&quot;: &quot;A String&quot;, # Optional. The config variable value in case of config variable of type integer.
      &quot;key&quot;: &quot;A String&quot;, # Output only. Key will be the id to uniquely identify the config variable.
      &quot;multiIntValues&quot;: { # The config variable value of data type multi int. # Optional. The config variable value in case of config variable of type multi integer.
        &quot;values&quot;: [ # Optional. The config variable value of data type multi int.
          42,
        ],
      },
      &quot;multiSelectValues&quot;: { # The config variable value of data type multi select. # Optional. The config variable value in case of config variable of type multi select.
        &quot;values&quot;: [ # Optional. The config variable value of data type multi select.
          { # ConfigValueOption represents an option for a config variable of type enum or multi select.
            &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the option.
            &quot;displayName&quot;: &quot;A String&quot;, # Required. Display name of the option.
            &quot;id&quot;: &quot;A String&quot;, # Required. Id of the option.
          },
        ],
      },
      &quot;multiStringValues&quot;: { # The config variable value of data type multi string. # Optional. The config variable value in case of config variable of type multi string.
        &quot;values&quot;: [ # Optional. The config variable value of data type multi string.
          &quot;A String&quot;,
        ],
      },
      &quot;secretValue&quot;: { # Secret provides a reference to entries in Secret Manager. # Optional. The config variable value in case of config variable of type secret.
        &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
      },
      &quot;stringValue&quot;: &quot;A String&quot;, # Optional. The config variable value in case of config variable of type string.
    },
  },
  &quot;authConfig&quot;: { # AuthConfig represents the authentication information. # Optional. The authentication information for this plugin instance.
    &quot;apiKeyConfig&quot;: { # Config for authentication with API key. # Api Key Config.
      &quot;apiKey&quot;: { # Secret provides a reference to entries in Secret Manager. # Required. The name of the SecretManager secret version resource storing the API key. Format: `projects/{project}/secrets/{secrete}/versions/{version}`. The `secretmanager.versions.access` permission should be granted to the service account accessing the secret.
        &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
      },
      &quot;httpElementLocation&quot;: &quot;A String&quot;, # Required. The location of the API key. The default value is QUERY.
      &quot;name&quot;: &quot;A String&quot;, # Required. The parameter name of the API key. E.g. If the API request is &quot;https://example.com/act?api_key=&quot;, &quot;api_key&quot; would be the parameter name.
    },
    &quot;authType&quot;: &quot;A String&quot;, # Required. The authentication type.
    &quot;googleServiceAccountConfig&quot;: { # Config for Google service account authentication. # Google Service Account.
      &quot;serviceAccount&quot;: &quot;A String&quot;, # Required. The service account to be used for authenticating request. The `iam.serviceAccounts.getAccessToken` permission should be granted on this service account to the impersonator service account.
    },
    &quot;oauth2ClientCredentialsConfig&quot;: { # Parameters to support Oauth 2.0 client credentials grant authentication. See https://tools.ietf.org/html/rfc6749#section-1.3.4 for more details. # Oauth2.0 Client Credentials.
      &quot;clientId&quot;: &quot;A String&quot;, # Required. The client identifier.
      &quot;clientSecret&quot;: { # Secret provides a reference to entries in Secret Manager. # Required. Secret version reference containing the client secret. The `secretmanager.versions.access` permission should be granted to the service account accessing the secret.
        &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
      },
    },
    &quot;userPasswordConfig&quot;: { # Parameters to support Username and Password Authentication. # User Password.
      &quot;password&quot;: { # Secret provides a reference to entries in Secret Manager. # Required. Secret version reference containing the password. The `secretmanager.versions.access` permission should be granted to the service account accessing the secret.
        &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
      },
      &quot;username&quot;: &quot;A String&quot;, # Required. Username.
    },
  },
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Timestamp indicating when the plugin instance was created.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name for this plugin instance. Max length is 255 characters.
  &quot;errorMessage&quot;: &quot;A String&quot;, # Output only. Error message describing the failure, if any, during Create, Delete or ApplyConfig operation corresponding to the plugin instance.This field will only be populated if the plugin instance is in the ERROR or FAILED state.
  &quot;name&quot;: &quot;A String&quot;, # Identifier. The unique name of the plugin instance resource. Format: `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}`
  &quot;sourceProjectId&quot;: &quot;A String&quot;, # Optional. The source project id of the plugin instance. This will be the id of runtime project in case of gcp based plugins and org id in case of non gcp based plugins. This field will be a required field for Google provided on-ramp plugins.
  &quot;state&quot;: &quot;A String&quot;, # Output only. The current state of the plugin instance (e.g., enabled, disabled, provisioning).
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Timestamp indicating when the plugin instance was last updated.
}</pre>
</div>

<div class="method">
    <code class="details" id="list">list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)</code>
  <pre>List all the plugins in a given project and location. `-` can be used as wildcard value for {plugin_id}

Args:
  parent: string, Required. The parent resource where this plugin will be created. Format: `projects/{project}/locations/{location}/plugins/{plugin}`. To list plugin instances for multiple plugins, use the - character instead of the plugin ID. (required)
  filter: string, Optional. An expression that filters the list of plugin instances. A filter expression consists of a field name, a comparison operator, and a value for filtering. The value must be a string. The comparison operator must be one of: `&lt;`, `&gt;` or `=`. Filters are not case sensitive. The following fields in the `PluginInstances` are eligible for filtering: * `state` - The state of the Plugin Instance. Allowed comparison operators: `=`. A filter function is also supported in the filter string. The filter function is `id(name)`. The `id(name)` function returns the id of the resource name. For example, `id(name) = \&quot;plugin-instance-1\&quot;` is equivalent to `name = \&quot;projects/test-project-id/locations/test-location-id/plugins/plugin-1/instances/plugin-instance-1\&quot;` provided the parent is `projects/test-project-id/locations/test-location-id/plugins/plugin-1`. Expressions are combined with either `AND` logic operator or `OR` logical operator but not both of them together i.e. only one of the `AND` or `OR` operator can be used throughout the filter string and both the operators cannot be used together. No other logical operators are supported. At most three filter fields are allowed in the filter string and if provided more than that then `INVALID_ARGUMENT` error is returned by the API. Here are a few examples: * `state = ENABLED` - The plugin instance is in enabled state.
  pageSize: integer, Optional. The maximum number of hub plugins to return. The service may return fewer than this value. If unspecified, at most 50 hub plugins will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.
  pageToken: string, Optional. A page token, received from a previous `ListPluginInstances` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListPluginInstances` must match the call that provided the page token.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # The ListPluginInstances method&#x27;s response.
  &quot;nextPageToken&quot;: &quot;A String&quot;, # A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.
  &quot;pluginInstances&quot;: [ # The plugin instances from the specified parent resource.
    { # Represents a plugin instance resource in the API Hub. A PluginInstance is a specific instance of a hub plugin with its own configuration, state, and execution details.
      &quot;actions&quot;: [ # Required. The action status for the plugin instance.
        { # PluginInstanceAction represents an action which can be executed in the plugin instance.
          &quot;actionId&quot;: &quot;A String&quot;, # Required. This should map to one of the action id specified in actions_config in the plugin.
          &quot;curationConfig&quot;: { # The curation information for this plugin instance. # Optional. This configuration should be provided if the plugin action is publishing data to API hub curate layer.
            &quot;curationType&quot;: &quot;A String&quot;, # Required. The curation type for this plugin instance.
            &quot;customCuration&quot;: { # Custom curation information for this plugin instance. # Optional. Custom curation information for this plugin instance.
              &quot;curation&quot;: &quot;A String&quot;, # Required. The unique name of the curation resource. This will be the name of the curation resource in the format: `projects/{project}/locations/{location}/curations/{curation}`
            },
          },
          &quot;hubInstanceAction&quot;: { # The execution status for the plugin instance. # Optional. The execution information for the plugin instance action done corresponding to an API hub instance.
            &quot;currentExecutionState&quot;: &quot;A String&quot;, # Output only. The current state of the execution.
            &quot;lastExecution&quot;: { # The result of the last execution of the plugin instance. # Output only. The last execution of the plugin instance.
              &quot;endTime&quot;: &quot;A String&quot;, # Output only. The last execution end time of the plugin instance.
              &quot;errorMessage&quot;: &quot;A String&quot;, # Output only. Error message describing the failure, if any, during the last execution.
              &quot;result&quot;: &quot;A String&quot;, # Output only. The result of the last execution of the plugin instance.
              &quot;startTime&quot;: &quot;A String&quot;, # Output only. The last execution start time of the plugin instance.
            },
          },
          &quot;resourceConfig&quot;: { # The configuration of resources created for a given plugin instance action. # Output only. The configuration of resources created for a given plugin instance action. Note these will be returned only in case of Non-GCP plugins like OPDK.
            &quot;actionType&quot;: &quot;A String&quot;, # Output only. The type of the action.
            &quot;pubsubTopic&quot;: &quot;A String&quot;, # Output only. The pubsub topic to publish the data to. Format is projects/{project}/topics/{topic}
          },
          &quot;scheduleCronExpression&quot;: &quot;A String&quot;, # Optional. The schedule for this plugin instance action. This can only be set if the plugin supports API_HUB_SCHEDULE_TRIGGER mode for this action.
          &quot;scheduleTimeZone&quot;: &quot;A String&quot;, # Optional. The time zone for the schedule cron expression. If not provided, UTC will be used.
          &quot;serviceAccount&quot;: &quot;A String&quot;, # Optional. The service account used to publish data. Note, the service account will only be accepted for non GCP plugins like OPDK.
          &quot;state&quot;: &quot;A String&quot;, # Output only. The current state of the plugin action in the plugin instance.
        },
      ],
      &quot;additionalConfig&quot;: { # Optional. The additional information for this plugin instance corresponding to the additional config template of the plugin. This information will be sent to plugin hosting service on each call to plugin hosted service. The key will be the config_variable_template.display_name to uniquely identify the config variable.
        &quot;a_key&quot;: { # ConfigVariable represents a additional configuration variable present in a PluginInstance Config or AuthConfig, based on a ConfigVariableTemplate.
          &quot;boolValue&quot;: True or False, # Optional. The config variable value in case of config variable of type boolean.
          &quot;enumValue&quot;: { # ConfigValueOption represents an option for a config variable of type enum or multi select. # Optional. The config variable value in case of config variable of type enum.
            &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the option.
            &quot;displayName&quot;: &quot;A String&quot;, # Required. Display name of the option.
            &quot;id&quot;: &quot;A String&quot;, # Required. Id of the option.
          },
          &quot;intValue&quot;: &quot;A String&quot;, # Optional. The config variable value in case of config variable of type integer.
          &quot;key&quot;: &quot;A String&quot;, # Output only. Key will be the id to uniquely identify the config variable.
          &quot;multiIntValues&quot;: { # The config variable value of data type multi int. # Optional. The config variable value in case of config variable of type multi integer.
            &quot;values&quot;: [ # Optional. The config variable value of data type multi int.
              42,
            ],
          },
          &quot;multiSelectValues&quot;: { # The config variable value of data type multi select. # Optional. The config variable value in case of config variable of type multi select.
            &quot;values&quot;: [ # Optional. The config variable value of data type multi select.
              { # ConfigValueOption represents an option for a config variable of type enum or multi select.
                &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the option.
                &quot;displayName&quot;: &quot;A String&quot;, # Required. Display name of the option.
                &quot;id&quot;: &quot;A String&quot;, # Required. Id of the option.
              },
            ],
          },
          &quot;multiStringValues&quot;: { # The config variable value of data type multi string. # Optional. The config variable value in case of config variable of type multi string.
            &quot;values&quot;: [ # Optional. The config variable value of data type multi string.
              &quot;A String&quot;,
            ],
          },
          &quot;secretValue&quot;: { # Secret provides a reference to entries in Secret Manager. # Optional. The config variable value in case of config variable of type secret.
            &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
          },
          &quot;stringValue&quot;: &quot;A String&quot;, # Optional. The config variable value in case of config variable of type string.
        },
      },
      &quot;authConfig&quot;: { # AuthConfig represents the authentication information. # Optional. The authentication information for this plugin instance.
        &quot;apiKeyConfig&quot;: { # Config for authentication with API key. # Api Key Config.
          &quot;apiKey&quot;: { # Secret provides a reference to entries in Secret Manager. # Required. The name of the SecretManager secret version resource storing the API key. Format: `projects/{project}/secrets/{secrete}/versions/{version}`. The `secretmanager.versions.access` permission should be granted to the service account accessing the secret.
            &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
          },
          &quot;httpElementLocation&quot;: &quot;A String&quot;, # Required. The location of the API key. The default value is QUERY.
          &quot;name&quot;: &quot;A String&quot;, # Required. The parameter name of the API key. E.g. If the API request is &quot;https://example.com/act?api_key=&quot;, &quot;api_key&quot; would be the parameter name.
        },
        &quot;authType&quot;: &quot;A String&quot;, # Required. The authentication type.
        &quot;googleServiceAccountConfig&quot;: { # Config for Google service account authentication. # Google Service Account.
          &quot;serviceAccount&quot;: &quot;A String&quot;, # Required. The service account to be used for authenticating request. The `iam.serviceAccounts.getAccessToken` permission should be granted on this service account to the impersonator service account.
        },
        &quot;oauth2ClientCredentialsConfig&quot;: { # Parameters to support Oauth 2.0 client credentials grant authentication. See https://tools.ietf.org/html/rfc6749#section-1.3.4 for more details. # Oauth2.0 Client Credentials.
          &quot;clientId&quot;: &quot;A String&quot;, # Required. The client identifier.
          &quot;clientSecret&quot;: { # Secret provides a reference to entries in Secret Manager. # Required. Secret version reference containing the client secret. The `secretmanager.versions.access` permission should be granted to the service account accessing the secret.
            &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
          },
        },
        &quot;userPasswordConfig&quot;: { # Parameters to support Username and Password Authentication. # User Password.
          &quot;password&quot;: { # Secret provides a reference to entries in Secret Manager. # Required. Secret version reference containing the password. The `secretmanager.versions.access` permission should be granted to the service account accessing the secret.
            &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
          },
          &quot;username&quot;: &quot;A String&quot;, # Required. Username.
        },
      },
      &quot;createTime&quot;: &quot;A String&quot;, # Output only. Timestamp indicating when the plugin instance was created.
      &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name for this plugin instance. Max length is 255 characters.
      &quot;errorMessage&quot;: &quot;A String&quot;, # Output only. Error message describing the failure, if any, during Create, Delete or ApplyConfig operation corresponding to the plugin instance.This field will only be populated if the plugin instance is in the ERROR or FAILED state.
      &quot;name&quot;: &quot;A String&quot;, # Identifier. The unique name of the plugin instance resource. Format: `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}`
      &quot;sourceProjectId&quot;: &quot;A String&quot;, # Optional. The source project id of the plugin instance. This will be the id of runtime project in case of gcp based plugins and org id in case of non gcp based plugins. This field will be a required field for Google provided on-ramp plugins.
      &quot;state&quot;: &quot;A String&quot;, # Output only. The current state of the plugin instance (e.g., enabled, disabled, provisioning).
      &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Timestamp indicating when the plugin instance was last updated.
    },
  ],
}</pre>
</div>

<div class="method">
    <code class="details" id="list_next">list_next()</code>
  <pre>Retrieves the next page of results.

        Args:
          previous_request: The request for the previous page. (required)
          previous_response: The response from the request for the previous page. (required)

        Returns:
          A request object that you can call &#x27;execute()&#x27; on to request the next
          page. Returns None if there are no more items in the collection.
        </pre>
</div>

<div class="method">
    <code class="details" id="manageSourceData">manageSourceData(name, body=None, x__xgafv=None)</code>
  <pre>Manages data for a given plugin instance.

Args:
  name: string, Required. The name of the plugin instance for which data needs to be managed. Format: `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}` (required)
  body: object, The request body.
    The object takes the form of:

{ # The ManagePluginInstanceSourceData method&#x27;s request.
  &quot;action&quot;: &quot;A String&quot;, # Required. Action to be performed.
  &quot;data&quot;: &quot;A String&quot;, # Required. Data to be managed.
  &quot;dataType&quot;: &quot;A String&quot;, # Required. Type of data to be managed.
  &quot;relativePath&quot;: &quot;A String&quot;, # Required. Relative path of data being managed for a given plugin instance.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # The ManagePluginInstanceSourceData method&#x27;s response.
}</pre>
</div>

<div class="method">
    <code class="details" id="patch">patch(name, body=None, updateMask=None, x__xgafv=None)</code>
  <pre>Updates a plugin instance in the API hub. The following fields in the plugin_instance can be updated currently: * display_name * schedule_cron_expression The update_mask should be used to specify the fields being updated. To update the auth_config and additional_config of the plugin instance, use the ApplyPluginInstanceConfig method.

Args:
  name: string, Identifier. The unique name of the plugin instance resource. Format: `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}` (required)
  body: object, The request body.
    The object takes the form of:

{ # Represents a plugin instance resource in the API Hub. A PluginInstance is a specific instance of a hub plugin with its own configuration, state, and execution details.
  &quot;actions&quot;: [ # Required. The action status for the plugin instance.
    { # PluginInstanceAction represents an action which can be executed in the plugin instance.
      &quot;actionId&quot;: &quot;A String&quot;, # Required. This should map to one of the action id specified in actions_config in the plugin.
      &quot;curationConfig&quot;: { # The curation information for this plugin instance. # Optional. This configuration should be provided if the plugin action is publishing data to API hub curate layer.
        &quot;curationType&quot;: &quot;A String&quot;, # Required. The curation type for this plugin instance.
        &quot;customCuration&quot;: { # Custom curation information for this plugin instance. # Optional. Custom curation information for this plugin instance.
          &quot;curation&quot;: &quot;A String&quot;, # Required. The unique name of the curation resource. This will be the name of the curation resource in the format: `projects/{project}/locations/{location}/curations/{curation}`
        },
      },
      &quot;hubInstanceAction&quot;: { # The execution status for the plugin instance. # Optional. The execution information for the plugin instance action done corresponding to an API hub instance.
        &quot;currentExecutionState&quot;: &quot;A String&quot;, # Output only. The current state of the execution.
        &quot;lastExecution&quot;: { # The result of the last execution of the plugin instance. # Output only. The last execution of the plugin instance.
          &quot;endTime&quot;: &quot;A String&quot;, # Output only. The last execution end time of the plugin instance.
          &quot;errorMessage&quot;: &quot;A String&quot;, # Output only. Error message describing the failure, if any, during the last execution.
          &quot;result&quot;: &quot;A String&quot;, # Output only. The result of the last execution of the plugin instance.
          &quot;startTime&quot;: &quot;A String&quot;, # Output only. The last execution start time of the plugin instance.
        },
      },
      &quot;resourceConfig&quot;: { # The configuration of resources created for a given plugin instance action. # Output only. The configuration of resources created for a given plugin instance action. Note these will be returned only in case of Non-GCP plugins like OPDK.
        &quot;actionType&quot;: &quot;A String&quot;, # Output only. The type of the action.
        &quot;pubsubTopic&quot;: &quot;A String&quot;, # Output only. The pubsub topic to publish the data to. Format is projects/{project}/topics/{topic}
      },
      &quot;scheduleCronExpression&quot;: &quot;A String&quot;, # Optional. The schedule for this plugin instance action. This can only be set if the plugin supports API_HUB_SCHEDULE_TRIGGER mode for this action.
      &quot;scheduleTimeZone&quot;: &quot;A String&quot;, # Optional. The time zone for the schedule cron expression. If not provided, UTC will be used.
      &quot;serviceAccount&quot;: &quot;A String&quot;, # Optional. The service account used to publish data. Note, the service account will only be accepted for non GCP plugins like OPDK.
      &quot;state&quot;: &quot;A String&quot;, # Output only. The current state of the plugin action in the plugin instance.
    },
  ],
  &quot;additionalConfig&quot;: { # Optional. The additional information for this plugin instance corresponding to the additional config template of the plugin. This information will be sent to plugin hosting service on each call to plugin hosted service. The key will be the config_variable_template.display_name to uniquely identify the config variable.
    &quot;a_key&quot;: { # ConfigVariable represents a additional configuration variable present in a PluginInstance Config or AuthConfig, based on a ConfigVariableTemplate.
      &quot;boolValue&quot;: True or False, # Optional. The config variable value in case of config variable of type boolean.
      &quot;enumValue&quot;: { # ConfigValueOption represents an option for a config variable of type enum or multi select. # Optional. The config variable value in case of config variable of type enum.
        &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the option.
        &quot;displayName&quot;: &quot;A String&quot;, # Required. Display name of the option.
        &quot;id&quot;: &quot;A String&quot;, # Required. Id of the option.
      },
      &quot;intValue&quot;: &quot;A String&quot;, # Optional. The config variable value in case of config variable of type integer.
      &quot;key&quot;: &quot;A String&quot;, # Output only. Key will be the id to uniquely identify the config variable.
      &quot;multiIntValues&quot;: { # The config variable value of data type multi int. # Optional. The config variable value in case of config variable of type multi integer.
        &quot;values&quot;: [ # Optional. The config variable value of data type multi int.
          42,
        ],
      },
      &quot;multiSelectValues&quot;: { # The config variable value of data type multi select. # Optional. The config variable value in case of config variable of type multi select.
        &quot;values&quot;: [ # Optional. The config variable value of data type multi select.
          { # ConfigValueOption represents an option for a config variable of type enum or multi select.
            &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the option.
            &quot;displayName&quot;: &quot;A String&quot;, # Required. Display name of the option.
            &quot;id&quot;: &quot;A String&quot;, # Required. Id of the option.
          },
        ],
      },
      &quot;multiStringValues&quot;: { # The config variable value of data type multi string. # Optional. The config variable value in case of config variable of type multi string.
        &quot;values&quot;: [ # Optional. The config variable value of data type multi string.
          &quot;A String&quot;,
        ],
      },
      &quot;secretValue&quot;: { # Secret provides a reference to entries in Secret Manager. # Optional. The config variable value in case of config variable of type secret.
        &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
      },
      &quot;stringValue&quot;: &quot;A String&quot;, # Optional. The config variable value in case of config variable of type string.
    },
  },
  &quot;authConfig&quot;: { # AuthConfig represents the authentication information. # Optional. The authentication information for this plugin instance.
    &quot;apiKeyConfig&quot;: { # Config for authentication with API key. # Api Key Config.
      &quot;apiKey&quot;: { # Secret provides a reference to entries in Secret Manager. # Required. The name of the SecretManager secret version resource storing the API key. Format: `projects/{project}/secrets/{secrete}/versions/{version}`. The `secretmanager.versions.access` permission should be granted to the service account accessing the secret.
        &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
      },
      &quot;httpElementLocation&quot;: &quot;A String&quot;, # Required. The location of the API key. The default value is QUERY.
      &quot;name&quot;: &quot;A String&quot;, # Required. The parameter name of the API key. E.g. If the API request is &quot;https://example.com/act?api_key=&quot;, &quot;api_key&quot; would be the parameter name.
    },
    &quot;authType&quot;: &quot;A String&quot;, # Required. The authentication type.
    &quot;googleServiceAccountConfig&quot;: { # Config for Google service account authentication. # Google Service Account.
      &quot;serviceAccount&quot;: &quot;A String&quot;, # Required. The service account to be used for authenticating request. The `iam.serviceAccounts.getAccessToken` permission should be granted on this service account to the impersonator service account.
    },
    &quot;oauth2ClientCredentialsConfig&quot;: { # Parameters to support Oauth 2.0 client credentials grant authentication. See https://tools.ietf.org/html/rfc6749#section-1.3.4 for more details. # Oauth2.0 Client Credentials.
      &quot;clientId&quot;: &quot;A String&quot;, # Required. The client identifier.
      &quot;clientSecret&quot;: { # Secret provides a reference to entries in Secret Manager. # Required. Secret version reference containing the client secret. The `secretmanager.versions.access` permission should be granted to the service account accessing the secret.
        &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
      },
    },
    &quot;userPasswordConfig&quot;: { # Parameters to support Username and Password Authentication. # User Password.
      &quot;password&quot;: { # Secret provides a reference to entries in Secret Manager. # Required. Secret version reference containing the password. The `secretmanager.versions.access` permission should be granted to the service account accessing the secret.
        &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
      },
      &quot;username&quot;: &quot;A String&quot;, # Required. Username.
    },
  },
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Timestamp indicating when the plugin instance was created.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name for this plugin instance. Max length is 255 characters.
  &quot;errorMessage&quot;: &quot;A String&quot;, # Output only. Error message describing the failure, if any, during Create, Delete or ApplyConfig operation corresponding to the plugin instance.This field will only be populated if the plugin instance is in the ERROR or FAILED state.
  &quot;name&quot;: &quot;A String&quot;, # Identifier. The unique name of the plugin instance resource. Format: `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}`
  &quot;sourceProjectId&quot;: &quot;A String&quot;, # Optional. The source project id of the plugin instance. This will be the id of runtime project in case of gcp based plugins and org id in case of non gcp based plugins. This field will be a required field for Google provided on-ramp plugins.
  &quot;state&quot;: &quot;A String&quot;, # Output only. The current state of the plugin instance (e.g., enabled, disabled, provisioning).
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Timestamp indicating when the plugin instance was last updated.
}

  updateMask: string, Optional. The list of fields to update.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Represents a plugin instance resource in the API Hub. A PluginInstance is a specific instance of a hub plugin with its own configuration, state, and execution details.
  &quot;actions&quot;: [ # Required. The action status for the plugin instance.
    { # PluginInstanceAction represents an action which can be executed in the plugin instance.
      &quot;actionId&quot;: &quot;A String&quot;, # Required. This should map to one of the action id specified in actions_config in the plugin.
      &quot;curationConfig&quot;: { # The curation information for this plugin instance. # Optional. This configuration should be provided if the plugin action is publishing data to API hub curate layer.
        &quot;curationType&quot;: &quot;A String&quot;, # Required. The curation type for this plugin instance.
        &quot;customCuration&quot;: { # Custom curation information for this plugin instance. # Optional. Custom curation information for this plugin instance.
          &quot;curation&quot;: &quot;A String&quot;, # Required. The unique name of the curation resource. This will be the name of the curation resource in the format: `projects/{project}/locations/{location}/curations/{curation}`
        },
      },
      &quot;hubInstanceAction&quot;: { # The execution status for the plugin instance. # Optional. The execution information for the plugin instance action done corresponding to an API hub instance.
        &quot;currentExecutionState&quot;: &quot;A String&quot;, # Output only. The current state of the execution.
        &quot;lastExecution&quot;: { # The result of the last execution of the plugin instance. # Output only. The last execution of the plugin instance.
          &quot;endTime&quot;: &quot;A String&quot;, # Output only. The last execution end time of the plugin instance.
          &quot;errorMessage&quot;: &quot;A String&quot;, # Output only. Error message describing the failure, if any, during the last execution.
          &quot;result&quot;: &quot;A String&quot;, # Output only. The result of the last execution of the plugin instance.
          &quot;startTime&quot;: &quot;A String&quot;, # Output only. The last execution start time of the plugin instance.
        },
      },
      &quot;resourceConfig&quot;: { # The configuration of resources created for a given plugin instance action. # Output only. The configuration of resources created for a given plugin instance action. Note these will be returned only in case of Non-GCP plugins like OPDK.
        &quot;actionType&quot;: &quot;A String&quot;, # Output only. The type of the action.
        &quot;pubsubTopic&quot;: &quot;A String&quot;, # Output only. The pubsub topic to publish the data to. Format is projects/{project}/topics/{topic}
      },
      &quot;scheduleCronExpression&quot;: &quot;A String&quot;, # Optional. The schedule for this plugin instance action. This can only be set if the plugin supports API_HUB_SCHEDULE_TRIGGER mode for this action.
      &quot;scheduleTimeZone&quot;: &quot;A String&quot;, # Optional. The time zone for the schedule cron expression. If not provided, UTC will be used.
      &quot;serviceAccount&quot;: &quot;A String&quot;, # Optional. The service account used to publish data. Note, the service account will only be accepted for non GCP plugins like OPDK.
      &quot;state&quot;: &quot;A String&quot;, # Output only. The current state of the plugin action in the plugin instance.
    },
  ],
  &quot;additionalConfig&quot;: { # Optional. The additional information for this plugin instance corresponding to the additional config template of the plugin. This information will be sent to plugin hosting service on each call to plugin hosted service. The key will be the config_variable_template.display_name to uniquely identify the config variable.
    &quot;a_key&quot;: { # ConfigVariable represents a additional configuration variable present in a PluginInstance Config or AuthConfig, based on a ConfigVariableTemplate.
      &quot;boolValue&quot;: True or False, # Optional. The config variable value in case of config variable of type boolean.
      &quot;enumValue&quot;: { # ConfigValueOption represents an option for a config variable of type enum or multi select. # Optional. The config variable value in case of config variable of type enum.
        &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the option.
        &quot;displayName&quot;: &quot;A String&quot;, # Required. Display name of the option.
        &quot;id&quot;: &quot;A String&quot;, # Required. Id of the option.
      },
      &quot;intValue&quot;: &quot;A String&quot;, # Optional. The config variable value in case of config variable of type integer.
      &quot;key&quot;: &quot;A String&quot;, # Output only. Key will be the id to uniquely identify the config variable.
      &quot;multiIntValues&quot;: { # The config variable value of data type multi int. # Optional. The config variable value in case of config variable of type multi integer.
        &quot;values&quot;: [ # Optional. The config variable value of data type multi int.
          42,
        ],
      },
      &quot;multiSelectValues&quot;: { # The config variable value of data type multi select. # Optional. The config variable value in case of config variable of type multi select.
        &quot;values&quot;: [ # Optional. The config variable value of data type multi select.
          { # ConfigValueOption represents an option for a config variable of type enum or multi select.
            &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the option.
            &quot;displayName&quot;: &quot;A String&quot;, # Required. Display name of the option.
            &quot;id&quot;: &quot;A String&quot;, # Required. Id of the option.
          },
        ],
      },
      &quot;multiStringValues&quot;: { # The config variable value of data type multi string. # Optional. The config variable value in case of config variable of type multi string.
        &quot;values&quot;: [ # Optional. The config variable value of data type multi string.
          &quot;A String&quot;,
        ],
      },
      &quot;secretValue&quot;: { # Secret provides a reference to entries in Secret Manager. # Optional. The config variable value in case of config variable of type secret.
        &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
      },
      &quot;stringValue&quot;: &quot;A String&quot;, # Optional. The config variable value in case of config variable of type string.
    },
  },
  &quot;authConfig&quot;: { # AuthConfig represents the authentication information. # Optional. The authentication information for this plugin instance.
    &quot;apiKeyConfig&quot;: { # Config for authentication with API key. # Api Key Config.
      &quot;apiKey&quot;: { # Secret provides a reference to entries in Secret Manager. # Required. The name of the SecretManager secret version resource storing the API key. Format: `projects/{project}/secrets/{secrete}/versions/{version}`. The `secretmanager.versions.access` permission should be granted to the service account accessing the secret.
        &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
      },
      &quot;httpElementLocation&quot;: &quot;A String&quot;, # Required. The location of the API key. The default value is QUERY.
      &quot;name&quot;: &quot;A String&quot;, # Required. The parameter name of the API key. E.g. If the API request is &quot;https://example.com/act?api_key=&quot;, &quot;api_key&quot; would be the parameter name.
    },
    &quot;authType&quot;: &quot;A String&quot;, # Required. The authentication type.
    &quot;googleServiceAccountConfig&quot;: { # Config for Google service account authentication. # Google Service Account.
      &quot;serviceAccount&quot;: &quot;A String&quot;, # Required. The service account to be used for authenticating request. The `iam.serviceAccounts.getAccessToken` permission should be granted on this service account to the impersonator service account.
    },
    &quot;oauth2ClientCredentialsConfig&quot;: { # Parameters to support Oauth 2.0 client credentials grant authentication. See https://tools.ietf.org/html/rfc6749#section-1.3.4 for more details. # Oauth2.0 Client Credentials.
      &quot;clientId&quot;: &quot;A String&quot;, # Required. The client identifier.
      &quot;clientSecret&quot;: { # Secret provides a reference to entries in Secret Manager. # Required. Secret version reference containing the client secret. The `secretmanager.versions.access` permission should be granted to the service account accessing the secret.
        &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
      },
    },
    &quot;userPasswordConfig&quot;: { # Parameters to support Username and Password Authentication. # User Password.
      &quot;password&quot;: { # Secret provides a reference to entries in Secret Manager. # Required. Secret version reference containing the password. The `secretmanager.versions.access` permission should be granted to the service account accessing the secret.
        &quot;secretVersion&quot;: &quot;A String&quot;, # Required. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.
      },
      &quot;username&quot;: &quot;A String&quot;, # Required. Username.
    },
  },
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Timestamp indicating when the plugin instance was created.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name for this plugin instance. Max length is 255 characters.
  &quot;errorMessage&quot;: &quot;A String&quot;, # Output only. Error message describing the failure, if any, during Create, Delete or ApplyConfig operation corresponding to the plugin instance.This field will only be populated if the plugin instance is in the ERROR or FAILED state.
  &quot;name&quot;: &quot;A String&quot;, # Identifier. The unique name of the plugin instance resource. Format: `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}`
  &quot;sourceProjectId&quot;: &quot;A String&quot;, # Optional. The source project id of the plugin instance. This will be the id of runtime project in case of gcp based plugins and org id in case of non gcp based plugins. This field will be a required field for Google provided on-ramp plugins.
  &quot;state&quot;: &quot;A String&quot;, # Output only. The current state of the plugin instance (e.g., enabled, disabled, provisioning).
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Timestamp indicating when the plugin instance was last updated.
}</pre>
</div>

</body></html>